package com.emm.yixun.estate.service;

import javax.jws.WebService;

import com.emm.yixun.common.page.Page;
import com.emm.yixun.common.response.Response;
import com.emm.yixun.common.response.ResponseList;
import com.emm.yixun.common.model.ProjectParameter;
import com.emm.yixun.common.model.dto.ProjectParameterDto;

@WebService
public interface ProjectParameterServiceFacade {
    /**
     * 新增
     */
    Response<ProjectParameterDto> save(ProjectParameterDto dto, String json);

    void init(ProjectParameterDto saveDto);

    /**
     * 单独新增
     */
    Response<ProjectParameterDto> saveSingleParam(ProjectParameterDto dto, String json);

    /**
     * 修改,当selective=true时修改非空列,当selective=false修改所有列
     */
    Response<Integer> updateByPrimaryKey(ProjectParameterDto dto, Boolean selective);

    /**
     * 逻辑删除
     */
    Response<Integer> deleteByPrimaryKey(Long id);

    /**
     * 主键查询
     */
    Response<ProjectParameter> findById(Long id);

    /**
     * 根据dto查询记录
     */
    ResponseList<ProjectParameter> findListByDto(ProjectParameterDto dto);

    /**
     * 根据dto查询记录
     */
    Response<ProjectParameter> findByDto(ProjectParameterDto dto);

    /**
     * 根据dto以及分页参数查询记录
     */
    Page<ProjectParameterDto> findPageByDto(ProjectParameterDto dto, Integer begin, Integer row);

    /**
     * 查询项目下的业态
     */
    ResponseList<ProjectParameterDto> getIndustMarkByProjectId(Long projectId);
}
